home *** CD-ROM | disk | FTP | other *** search
/ PD ROM 1 / PD ROM Volume I - Macintosh Software from BMUG (1988).iso / Graphics / Graphic Utilities / Postscript Stuff / Certificate with Seal < prev    next >
Encoding:
Text File  |  1987-07-03  |  1.8 KB  |  104 lines  |  [GPPS/LIST]

  1. % certificate with seal
  2. /outsidecircletext
  3.     {circtextdict begin
  4.         /radius exch def
  5.         /centerangle exch def
  6.         /ptsize exch def
  7.         /str exch def
  8.         /xradius radius ptsize 4 div add def
  9.  
  10.     gsave
  11.     centerangle str findhalfangle add rotate
  12.  
  13. str
  14. {/charcode exch def
  15.         ( ) dup 0 charcode put outsideplacechar
  16. }forall
  17.     grestore
  18.     end
  19. }def
  20.  
  21. /insidecircletext
  22. {circtextdict begin
  23.         /radius exch def  /centerangle exch def
  24.         /ptsize exch def  /str exch def
  25.  
  26.     /xradius radius ptsize 3 div sub def
  27.     gsave
  28.   centerangle str findhalfangle sub rotate
  29. str
  30.  {/charcode exch def
  31.             ( ) dup 0 charcode put insideplacechar
  32. }forall
  33. grestore
  34. end
  35. }def
  36.  
  37. /circtextdict 16 dict def
  38.     circtextdict begin
  39. /findhalfangle
  40.         {stringwidth pop 2 div
  41.   2 xradius mul pi mul div 360 mul
  42. }def
  43.  
  44.  
  45. /outsideplacechar
  46. {/char exch def
  47.     /halfangle char findhalfangle def
  48. gsave
  49.         halfangle neg rotate
  50.     radius 0 translate
  51.     -90 rotate
  52.     char stringwidth pop 2 div neg 0 moveto
  53. char show
  54. grestore
  55. halfangle 2 mul neg rotate
  56. }def
  57.  
  58. /insideplacechar
  59. {/char exch def
  60.     /halfangle char findhalfangle def
  61.     gsave
  62.     halfangle rotate
  63.     radius 0 translate
  64.     90 rotate
  65.         char stringwidth pop 2 div neg 0 moveto
  66.     char show
  67.     grestore
  68.     halfangle 2 mul rotate
  69. }def
  70.  
  71.     /pi 3.1415923 def
  72. end
  73.  
  74.  
  75.  
  76. /Badge         
  77.     {
  78.     /Times-Bold findfont 12 scalefont setfont
  79.  
  80.     topseal % top of circle text
  81.  
  82.     12 90 52 outsidecircletext
  83.     
  84.     bottomseal % bottom of circle text
  85.  
  86.     12 270 52 insidecircletext
  87.     
  88. } def
  89. /cutline
  90. {newpath .5 setgray 0 3 60 0 360 arc stroke 0 setgray } def   % draw circle
  91. -90 rotate
  92. gsave
  93. -396  50 translate % number of points to move down on the page was 50
  94. /Times-Bold findfont 40 scalefont setfont % set the point size-- match below
  95.  
  96. topline % text to be printed
  97.  40 90 475 outsidecircletext % the 1st number is the point size match above was 500
  98. grestore
  99. -612 0 translate
  100. 476 103 translate gsave
  101. Badge cutline
  102. % /#copies 1 def
  103. showpage
  104.